package com.ruoyi.vqms.service;

import com.ruoyi.system.domain.led.CfLinXinLed;
import com.ruoyi.vqms.domain.VQMSLed;
import io.netty.channel.ChannelHandlerContext;

import java.util.List;

/**
 * LED大屏 服务层
 */
public interface IVQMSLedService {

    List<VQMSLed> selectList(VQMSLed vqmsLed);

    List<VQMSLed> ledList(Long areaId);

    int add(VQMSLed vqmsLed);

    VQMSLed getById(Long id);

    int update(VQMSLed vqmsLed);

    int delete(Long[] ids);

    /**
     * 处理连接
     * @param ctx
     * @param msg
     * @return
     */
    void handleLink(ChannelHandlerContext ctx, Object msg) throws Exception;

    /**
     * 制作tcp数据
     * @param serialNumber  LED主板序列号
     * @param
     * @return
     * @throws Exception
     */
    String makeTcpData(String serialNumber, CfLinXinLed cfLinXinLed) throws Exception;
//    String makeTcpData(String serialNumber,String content) throws Exception;

    /**
     * 发送tcp数据
     * @param serialNumber
     * @param
     */
//    void sendTcpData(String serialNumber, String content) throws Exception;
    void sendTcpData(String serialNumber, CfLinXinLed cfLinXinLed) throws Exception;

    /**
     * 刷新大屏数据（重新制作节目、内码数据）
     * @throws Exception
     */
    void flushLesScreenData(Long areaId) throws Exception;

}
